package com.fdb.efp.nls.service.facade;

import com.fdb.efp.nls.service.vo.CaseDistrRatioVO;

import java.util.List;


/**
 * <p>Description:案件分配比例表				<p>
 * @author ligm
 * @date 2019-08-10
 */
public interface CaseDistrRatioService {
	
	public List<CaseDistrRatioVO> queryAllOwner(CaseDistrRatioVO caseDistrRatioVo);
	
	public List<CaseDistrRatioVO> queryAllCurrOrg(CaseDistrRatioVO caseDistrRatioVo);
	
	public List<CaseDistrRatioVO> queryAllCurrDownOrg(CaseDistrRatioVO caseDistrRatioVo);
	
	public List<CaseDistrRatioVO> queryAllCurrOwnerPrd(CaseDistrRatioVO caseDistrRatioVo);
	
	public int insertCaseDistrRatio(CaseDistrRatioVO inCaseDistrRatioVo);
	
	public int deleteByPk(CaseDistrRatioVO caseDistrRatioVo);
	
	public int updateByPk(CaseDistrRatioVO caseDistrRatioVo);
	
	public CaseDistrRatioVO queryByPk(CaseDistrRatioVO caseDistrRatioVo);

	/**
	 * 通过委外机构编号集合，获取版本状态=“”“”“”“”““””“”"生效"，审批状态=”"通过"的案件分配占比
	 * @author qiuyf
	 * @return
	 * @date 2019/9/4 11:42
	 * @version 0.1
	 */
	public List<CaseDistrRatioVO> getCaseDistrRatios(List<String> cooprOrgNos);

	/**
	 * TODO: 获取合作正常的机构，及其案件占比<br>
	 *
	 * 0.1:wanglihua:2019/9/9 16:42: TODO: <br>
	 * @author wanglihua
	 * @params  * @param null
	 * @return
	 * @since 2019/9/9 16:42
	 * @date 2019/9/9 16:42
	 * @version 0.1
	 */
	public List<CaseDistrRatioVO> getOrgsCaseInfos(CaseDistrRatioVO caseDistrRatioVO);
	
	/**
	 * 统计表满足条件的总数
	 * @param caseDistrRatioVo
	 * @return
	 * @author liuty
	 * @date 2019年9月26日 下午3:44:13
	 * @version 0.1
	 */
	public int getConditionSum(CaseDistrRatioVO inCaseDistrRatioVo);

	/**
	 * 获取统一版本号的案件分配比例
	 * @author xiezw
	 * @params  * @param null
	 * @return
	 * @date 2019/9/29 14:28
	 * @version 0.1
	 */
	public List<CaseDistrRatioVO> queryByVersionNo(CaseDistrRatioVO caseDistrRatioVO);
	/**
	 * TODO: <br>
	 * 根据版本号批量修改版本状态
	 * 0.1:liuty:2019/10/14/0014 10:28: TODO: <br>
	 * @author liuty
	 * @param
	 * @return
	 * @since 2019/10/14/0014 10:28
	 * @date 2019/10/14/0014 10:28
	 * @version 0.1
	 */
	public int updateApprvSts(CaseDistrRatioVO caseDistrRatioVo);

	/**
	 *
	 * 根据合作机构号删除版本状态为新增的数据
	 *
	 * @author wanglihua
	 * @params  * @param null
	 * @return
	 * @since 2019/11/15 10:26
	 * @date 2019/11/15 10:26
	 * @version 0.1
	 */
	public int batchDeleteByCooNo(CaseDistrRatioVO inCaseDistrRatioVo);

	public List<CaseDistrRatioVO> getOrgListByPage(CaseDistrRatioVO caseDistrRatioVO);

	public List<CaseDistrRatioVO> getOrgList(String versionNo);

	public List<CaseDistrRatioVO> getUsefulOrgsCaseInfos(CaseDistrRatioVO queryCondition);

    public List<CaseDistrRatioVO> queryAllByCoop(String cooprOrgNo);
}
